使用存储过程将Oracle数据批量导出为多个csv文件 |
您所在的位置:网站首页 › oracle 存储过程导出excel文件 › 使用存储过程将Oracle数据批量导出为多个csv文件 |
数据库有如下表结构: aaa ( obj_id NUMBER, (Primary Key) obj_name VARCHAR2(80), obj_size NUMBER NOT NULL obj_time NUMBER NOT NULL ms_version NUMBER NOT NULL ) 现在有100万条记录,要求每1000条记录导出为一个csv文件,共计1000个文件,文件名称格式为output0.csv,output1.csv......output999.csv。每个csv文件每行记录包含:$1, $2, $3, $4四部分内容。 $1 = obj_id|obj_name $2 = obj_size *10+obj_version $3 = obj_time in format YYYY-MM-DD HH:mi $4 = obj_name 要求第一个文件在500ms以内产生出来,后面每个文件生成间隔时间不得大于500ms,速度均匀。方案一:使用pl/sql存储过程分页查询,每次查询1000条记录写一个文件,实现代码如下: create or replace procedure export_to_csv(P_DIR IN VARCHAR2) is CSV_OUTPUT UTL_FILE.FILE_TYPE; MAX_LINE NUMBER := 1000; OUT_FILE_NAME varchar2(20); OBJ_SIZE NUMBER; MIN_RECORD N |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |